repo: Handle "file" remotes in ostree_repo_remote_get_gpg_verify()
authorMatthew Barnes <mbarnes@redhat.com>
Sat, 6 Jun 2015 20:32:45 +0000 (16:32 -0400)
committerGiuseppe Scrivano <gscrivan@redhat.com>
Fri, 26 Jun 2015 09:02:24 +0000 (11:02 +0200)
src/libostree/ostree-repo-pull.c
src/libostree/ostree-repo.c

index 2a4281facc5d11dd4bf0c5ea8a3dfb5f53daf7c1..e259e344666d079151be83ee72f90115178f4281 100644 (file)
@@ -1673,20 +1673,16 @@ ostree_repo_pull_with_options (OstreeRepo             *self,
   if (_ostree_repo_remote_name_is_file (remote_name_or_baseurl))
     {
       baseurl = g_strdup (remote_name_or_baseurl);
-      /* For compatibility with pull-local, don't gpg verify local
-       * pulls.
-       */
-      pull_data->gpg_verify = FALSE;
     }
   else
     {
       pull_data->remote_name = g_strdup (remote_name_or_baseurl);
-
-      if (!ostree_repo_remote_get_gpg_verify (self, remote_name_or_baseurl,
-                                              &pull_data->gpg_verify, error))
-        goto out;
     }
 
+  if (!ostree_repo_remote_get_gpg_verify (self, remote_name_or_baseurl,
+                                          &pull_data->gpg_verify, error))
+    goto out;
+
   pull_data->phase = OSTREE_PULL_PHASE_FETCHING_REFS;
 
   pull_data->fetcher = _ostree_repo_remote_new_fetcher (self, remote_name_or_baseurl, error);
index 2353ffac57618dabf2e1335de23e4b794f335a2a..aaeffd57e3ef2dd59e51843b83a8cb8951bf26d6 100644 (file)
@@ -1248,8 +1248,19 @@ ostree_repo_remote_get_gpg_verify (OstreeRepo  *self,
                                    gboolean    *out_gpg_verify,
                                    GError     **error)
 {
-  return _ostree_repo_get_remote_boolean_option (self, name, "gpg-verify",
-                                                 TRUE, out_gpg_verify, error);
+  g_return_val_if_fail (OSTREE_IS_REPO (self), FALSE);
+  g_return_val_if_fail (name != NULL, FALSE);
+
+  /* For compatibility with pull-local, don't GPG verify file:// URIs. */
+  if (_ostree_repo_remote_name_is_file (name))
+    {
+      if (out_gpg_verify != NULL)
+        *out_gpg_verify = FALSE;
+      return TRUE;
+    }
+
+ return _ostree_repo_get_remote_boolean_option (self, name, "gpg-verify",
+                                                TRUE, out_gpg_verify, error);
 }
 
 /**